
package com.zhike.common.dto;

/**
 * 消息“引用”元数据对象。用于存放消息“引用”功能时的被引用消息相关信息。
 *
 * <p>
 * <b>此DTO传输的数据对应于“离线聊天记录/MISSU_OFFLINE_HISTORY”等数据库表中的相关字段.</b>
 *
 * @author JackJiang
 * @since 11.0
 */
public class QuoteMeta {

    /** 引用消息的指纹码（注：如果是群聊，则存放的是被引用群聊消息被服务端扩散写前的原始指纹码（也就是群成员收到的此条群聊消息的父指纹码）） */
    protected String quote_fp;
    /** 引用消息的发送者uid */
    protected String quote_sender_uid;
    /** 引用消息的发送者昵称 */
    protected String quote_sender_nick;
    /** 引用消息的状态（0 原消息正常，1 原消息已被撤回。默认0） */
    protected int quote_status;
    /** 引用消息的内容 */
    protected String quote_content;
    /** 引用消息的类型 */
    protected int quote_type;

    public String getQuote_fp() {
        return quote_fp;
    }

    public void setQuote_fp(String quote_fp) {
        this.quote_fp = quote_fp;
    }

    public String getQuote_sender_uid() {
        return quote_sender_uid;
    }

    public void setQuote_sender_uid(String quote_sender_uid) {
        this.quote_sender_uid = quote_sender_uid;
    }

    public String getQuote_sender_nick() {
        return quote_sender_nick;
    }

    public void setQuote_sender_nick(String quote_sender_nick) {
        this.quote_sender_nick = quote_sender_nick;
    }

    public int getQuote_status() {
        return quote_status;
    }

    public void setQuote_status(int quote_status) {
        this.quote_status = quote_status;
    }

    public String getQuote_content() {
        return quote_content;
    }

    public void setQuote_content(String quote_content) {
        this.quote_content = quote_content;
    }

    public int getQuote_type() {
        return quote_type;
    }

    public void setQuote_type(int quote_type) {
        this.quote_type = quote_type;
    }

    /**
     * 一次性设置所有QuteMeta字段值。
     *
     * @param qm 引用信息临时对象
     */
    public void setQuoteMeta(QuoteMeta qm) {
        if(qm != null) {
            this.quote_fp = qm.getQuote_fp();
            this.quote_sender_uid = qm.getQuote_sender_uid();
            this.quote_sender_nick = qm.getQuote_sender_nick();
            this.quote_status = qm.getQuote_status();
            this.quote_content = qm.getQuote_content();
            this.quote_type = qm.getQuote_type();
        }
    }
}